return g_object_new (GTK_TYPE_STYLE_PROPERTIES, NULL);
}
+void
+_gtk_style_properties_set_color_lookup_func (GtkStyleProperties *props,
+ GtkSymbolicColorLookupFunc func,
+ gpointer data)
+{
+ GtkStylePropertiesPrivate *priv;
+
+ g_return_if_fail (GTK_IS_STYLE_PROPERTIES (props));
+ g_return_if_fail (func != NULL);
+
+ priv = props->priv;
+ g_return_if_fail (priv->color_map == NULL);
+
+ priv->color_lookup_func = func;
+ priv->color_lookup_data = data;
+}
+
/**
* gtk_style_properties_map_color:
* @props: a #GtkStyleProperties
g_return_if_fail (color != NULL);
priv = props->priv;
+ g_return_if_fail (priv->color_lookup_func == NULL);
if (G_UNLIKELY (!priv->color_map))
priv->color_map = g_hash_table_new_full (g_str_hash,
priv = props->priv;
+ if (priv->color_lookup_func)
+ return priv->color_lookup_func (priv->color_lookup_data, name);
+
if (!priv->color_map)
return NULL;
GtkStateFlags state,
GtkStylePropertyContext *context,
...);
+void _gtk_style_properties_set_color_lookup_func (GtkStyleProperties *props,
+ GtkSymbolicColorLookupFunc func,
+ gpointer data);
void _gtk_style_properties_get_valist (GtkStyleProperties *props,
GtkStateFlags state,
GtkStylePropertyContext *context,